define(['app'],function(app){return {module: function($scope, $http, eventBusService, httpService, params) {
	httpService.post(app.urls.menu_select,{"id":params.father_id},function(data){
		if("0000" === data.code){
			$scope.menu_name = data.data[0].name;
			$scope.findButton(data.data[0].id);
		}else{
			alert(data.msg);
		}
	});
	$scope.findButton=function(menu_id){
		httpService.post(app.urls.button_select,{"menu_id":menu_id},function(data){
			if("0000" === data.code){
				$scope.buttons = data.data;
			}else{
				alert(data.msg);
			}
		});
	}
	//查询学年学期
	httpService.post(app.urls.prop_select,{"prop_group":'SCORE',"prop_key":'STU_YEAR'},function(data){
		if("0000" === data.code){
			$scope.academics =  data.data;
		}else{
			alert(data.msg);
		}
	});
	//查询学期
	httpService.post(app.urls.prop_select,{"prop_group":'SCORE',"prop_key":'STU_TERM'},function(data){
		if("0000" === data.code){
			$scope.semesters = data.data;
		}else{
			alert(data.msg);
		}
	});
	//查询主校区和分校区
	httpService.post(app.urls.unit_selectSchoolAndAttach,{},function(data){
		if("0000" === data.code){
			$scope.unitList = data.data;
		}else{
			alert(data.msg);
		}
	});
	//查询年级
	$scope.findGrade = function (){
		httpService.post(app.urls.grade_selectCenterGrade,$scope.form,function(data){
			if("0000" === data.code){
				$scope.gradeList = data.data;
				$scope.select();
				$scope.findClass();
				$scope.findCourse();
			}else{
				alert(data.msg);
			}
		});
	}
	//获取班级
	$scope.findClass=function(){
		httpService.post(app.urls.class_selectClassName,$scope.form,function(data){
			if("0000" === data.code){
				$scope.classList = data.data;
				$scope.select();
				$scope.findCourse();
			}else{
				alert(data.msg);
			}
		});
	}
	//查询课程
	$scope.findCourse=function(){
		httpService.post(app.urls.course_selectInCourseInfo,$scope.form, function (data) {
			if ("0000" === data.code) {
				$scope.courseList = data.data;
				$scope.select();
			} else {
				alert(data.msg);
			}
		});
	}
	var init =function(){
		//查询当前学年学期
		httpService.post(app.urls.prop_select,{"prop_group":'SCORE','status':'0'},function(data){
			if("0000" === data.code){
				for(var i=0;i<data.data.length;i++){
					if(data.data[i].prop_key=='STU_YEAR'){
						$scope.form.academic =  data.data[i].prop_pk;
					}
					if(data.data[i].prop_key=='STU_TERM'){
						$scope.form.semester =  data.data[i].prop_pk;
					}
				}
				$scope.find();
			}else{
				alert(data.msg);
			}
		});
	}
	init();
	//查询任课数据
	$scope.find = function(){
		$scope.form.list='list';
		httpService.postpage(app.urls.course_info_select,$scope.form,function(data){
			if("0000" === data.code){
    			$scope.rows = data.data;
    		}else{
    			alert(data.msg);
    		}
		});
	}
	//按钮点击事件-条件查询
	$scope.select = function(){
    	$scope.page.current = 1;
    	$scope.find();
    }
	$scope.clickBtn=function(event){
		var menu = {};
		if(event=='add'){eventBusService.publish("modal.page","modules/content/baseinfo/courseinfoCenter/add?FatherControllerName="+$scope.controllerName)};
		if(event=='update'){
			var values = [];
			$('#'+$scope.controllerName+' input[name="dataPk"]:checked').each(function(){
				values.push($(this).val());
			});
			if(values.length < 1){
				eventBusService.publish('modal.alert', {"title":"操作提示","content":"请选择修改数据。"});
			}else if(values.length > 1){
				eventBusService.publish('modal.alert', {"title":"操作提示","content":"您选择了多行数据，请重新选择。"});
			}else{
				eventBusService.publish("modal.page","modules/content/baseinfo/courseinfoCenter/update?FatherControllerName="+$scope.controllerName+"&id="+values[0]);
			}
		}
		if(event=='delete'){
			var values = [];
			var ids="";
			$('#'+$scope.controllerName+' input[name="dataPk"]:checked').each(function(){
				values.push($(this).val());
				ids = ids+",'"+$(this).val()+"'";
			});
			if(values.length < 1){
				eventBusService.publish('modal.alert', {"title":"操作提示","content":"请选择您要删除数据。"});
			}else{
				eventBusService.publish("modal.alert",{"content":"你是否确认删除这"+values.length+"条数据？","isAutoClose":false,"confirm":function(){
					httpService.post(app.urls.course_info_delete,{"ids":ids.replace(',','')},function(data){
							if("0000" === data.code){
								$scope.select();
							}else{
								alert("删除失败");
							}
						});
					},"cancel":function(){
						//用户取消，不做操作
					}});
			}
		}
		if(event=='export'){
			var values = [];
			$('#'+$scope.controllerName+' input[name="dataPk"]:checked').each(function(){
				values.push($(this).val());
			});
			$scope.form.list = JSON.stringify(values);
			httpService.post(app.urls.course_info_export,$scope.form, function(data) {
				if ("0000" === data.code) {
					window.location.href = data.data;
				} else {
					alert(data.msg);
				}
			});
		}
		if(event=='template'){
			httpService.post(app.urls.course_info_template,{}, function(data) {
				if ("0000" === data.code) {
					window.location.href = data.data;
				} else {
					alert(data.msg);
				}
			});
		}
		if(event=='import'){
			eventBusService.publish("modal.page","modules/content/baseinfo/courseinfoCenter/import");
		}
	}
	//接收数据刷新
	eventBusService.subscribe('content.page.reload', function(event,data) {
		$scope.select();
	});
	
	$scope.showul=function(num){
		$(".gzdw").removeClass("ss-display");
	}
	
	$scope.getSchool=function(school,num){
		if(school == 0){
			$scope.form.fk_unit = "";
			$scope.gzdwname = "";
			$(".gzdw").addClass("ss-display");
		}else{
			$scope.form.fk_unit = school.id;
			$scope.gzdwname = school.name;
			$(".gzdw").addClass("ss-display");
		}
		$scope.findGrade();
	}
		//选择数据
		$scope.optData = function (element) {
			if($(element).find("input[name='dataPk']").is(":checked")){
				$(element).find("input[name='dataPk']").prop("checked",false);
				$(element).removeClass("opt_tr");
			}else{
				$(element).find("input[name='dataPk']").prop("checked",true);
				$(element).addClass("opt_tr");
			}
		}
		$scope.checkAll = function(target) {
			$("#" + $scope.controllerName + " input[name='dataPk']").each(function() {
				if ($(this).prop("checked")) {
					$(this).prop('checked', false);
					$(this).parents("tr").removeClass("opt_tr");
				} else {
					$(this).prop('checked', true);
					$(this).parents("tr").addClass("opt_tr");
				}
			})
		}
}}});